/*****************************************************
 *
 *    This file is auto generated
 *
 *    SHA1: D3D175958AEB23D67FBA5AFFE98FD559C118DB9D
 *
 *****************************************************/

#pragma once
#include <memory>
#include <string>
using std::wstring;
using std::unique_ptr;

//#pragma comment (lib, "mackinac.lib")

namespace sap { namespace businessone { namespace webbridge {     
    /*
     * XSEngineBridge
     */      
    class XSEngineBridge
    {
    private:
        XSEngineBridge ();
    public:
        ~XSEngineBridge ();
        static XSEngineBridge& instance();
    public:
        int login (const wstring& uri, const wstring& user, const wstring& password) const;
        wstring getXAppList (const wstring& filter) const;
    private:
        static unique_ptr<XSEngineBridge> s_instance;
        void* m_mediator;
        int m_hash;
    };
    
    
    /*
     * IMCCBridge
     */      
    class IMCCBridge
    {
    private:
        IMCCBridge ();
    public:
        ~IMCCBridge ();
        static IMCCBridge& instance();
    public:
        int login (const wstring& uri, const wstring& user, const wstring& password) const;
        int deployPackage (const wstring& package) const;
        bool isCompanyEnabled () const;
        wstring getMessageList (const wstring& filter, bool flag, int num, float f, double d, long long x) const;
        void test () const;
    private:
        static unique_ptr<IMCCBridge> s_instance;
        void* m_mediator;
        int m_hash;
    };
    
}}}